package com.mutual.reins.interf.entity;

import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.TableField;
import java.io.Serializable;

import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * <p>
 * 
 * </p>
 *
 * @author CodeGenerate
 * @since 2021-03-31
 */
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("REINSENDORITEM")
public class ReinsEndorItem implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 批单号
     */
    @TableField("ENDORNO")
    private String endorNo;

    /**
     * 投保单号
     */
    @TableField("PROPOSALNO")
    private String proposalNo;

    /**
     * 保单号
     */
    @TableField("POLICYNO")
    private String policyNo;

    /**
     * 序号

     */
    @TableField("ITEMKINDNO")
    private Integer itemKindNo = 0;

    /**
     * 标的序号

     */
    @TableField("ITEMNO")
    private Integer itemNo = 0;

    /**
     * 标的项目
     */
    @TableField("ITEMCODE")
    private String itemCode;

    /**
     * 标的项目明细名称
     */
    @TableField("ITEMDETAILNAME")
    private String itemDetailName;

    /**
     * 标的地址编码
     */
    @TableField("ADDRESSCODE")
    private String addressCode;

    /**
     * 标的地址名称
     */
    @TableField("ADDRESSNAME")
    private String addressName;

    /**
     * 邮编
     */
    @TableField("POSTCODE")
    private String postcode;

    /**
     * 险别代码
     */
    @TableField("KINDCODE")
    private String kindCode;

    /**
     * 险别名称
     */
    @TableField("KINDNAME")
    private String kindName;

    /**
     * 币别
     */
    @TableField("CURRENCY")
    private String currency;

    /**
     * 标的数
     */
    @TableField("QUANTITY")
    private Integer quantity = 0;

    /**
     * 单个保额
     */
    @TableField("UNITAMOUNT")
    private BigDecimal unitAmount = new BigDecimal("0.00");

    /**
     * 单个保费
     */
    @TableField("UNITPREMIUM")
    private BigDecimal unitPremium = new BigDecimal("0.00");

    /**
     * 保额/赔偿限额

     */
    @TableField("AMOUNT")
    private BigDecimal amount = new BigDecimal("0.00");

    /**
     * 费率
     */
    @TableField("RATE")
    private BigDecimal rate = new BigDecimal("0.000000");

    /**
     * 保费
     */
    @TableField("PREMIUM")
    private BigDecimal premium = new BigDecimal("0.00");

    /**
     * 保额变化量
     */
    @TableField("CHGAMOUNT")
    private BigDecimal chgAmount = new BigDecimal("0.00");

    /**
     * 保费变化量
     */
    @TableField("CHGPREMIUM")
    private BigDecimal chgPremium = new BigDecimal("0.00");

    /**
     * 是否计算保额标志(Y/N)
     */
    @TableField("CALCULATEFLAG")
    private String calculateFlag;

    /**
     * 主险/附加险标志
0主险，1附加险

     */
    @TableField("MAINRISKFLAG")
    private String mainRiskFlag;

    /**
     * 批改类型
I:新增,D:删除,U:变更,N:不变

     */
    @TableField("ENDORFLAG")
    private String endorFlag;

    /**
     * 险种代码
     */
    @TableField("RISKCODE")
    private String riskCode;

    /**
     * 险种名称
     */
    @TableField("RISKCNAME")
    private String riskCname;

    /**
     * 批改前不免税保费
     */
    @TableField("PREMOFVAT")
    private BigDecimal premOfVat = new BigDecimal("0.00");

    /**
     * 批改前增值税
     */
    @TableField("VAT")
    private BigDecimal vat = new BigDecimal("0.00");

    /**
     * 批改前免税保费
     */
    @TableField("PREMFREEVAT")
    private BigDecimal premFreeVat = new BigDecimal("0.00");

    /**
     * 批改前免税金额
     */
    @TableField("FREEVAT")
    private BigDecimal freeVat = new BigDecimal("0.00");
    /**
     * 不免税保费变化量
     */
    @TableField("CHGPREMOFVAT")
    private BigDecimal chgPremOfVat = new BigDecimal("0.00");

    /**
     * 增值税变化量
     */
    @TableField("CHGVAT")
    private BigDecimal chgVat = new BigDecimal("0.00");

    /**
     * 免税保费变化量
     */
    @TableField("CHGPREMFREEVAT")
    private BigDecimal chgPremFreeVat = new BigDecimal("0.00");

    /**
     * 免税金额变化量
     */
    @TableField("CHGFREEVAT")
    private BigDecimal chgFreeVat = new BigDecimal("0.00");

    @TableField("EXAMINECOMCODE")
    private String examineComCode;

    @TableField("EXAMINEUSERCODE")
    private String examineUserCode;


}
